home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
F-French
/
(c)f1.d64
/
morse
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
7KB
|
238 lines
0 PRINT"[147]"
1 PRINT"PROGRAMME DE MORSE A VITESSE VARIABLE[146]"
2 PRINT" POUR COMMODORE 64[146]"
3 REM**CE PROGR. M'A ETE FOURNI PAR UN CLUB DE RADIO-AMATEUR DU SAGUENAY (P.Q.)*
4 REM**REMIS AU CLUB T.P.U.G. POUR DIFFUSION PAR MICHEL RICARD VE2DDT**
5 FORL=54272TO54296:POKEL,0:NEXT:N1=45:N2=192:F1=17:F2=16:FD$="TRIANGLE":S1=40
20 DIMVA$(100):GOSUB1700:REM"PROGRAMME DE MORSE A VITESSE VARIABLE"
30 POKE54273,N1:POKE54272,N2:POKE54277,18
32 POKE54278,128
34 :POKE54296,0:PRINT"[147]VOICI VOS CHOIX"
40 PRINT"1- ECRIRE UN TEXTE"
50 PRINT"2- ECOUTER UN TEXTE"
60 PRINT"3- ENVOYER EN DIRECT"
70 PRINT"4- LETTRES AU HAZARD
80 [153]"5- SAUVER OU SORTIR UN TEXTE
90 PRINT"6- CHANGER LA VITESSE OU LA FREQUENCE
100 [153]"7- FIN"
120 [153]:[153]"QUEL EST VOTRE CHOIX (1 A 7) ? ";
130 [141]2210
140 R1[178][198](R$):[139]R1[171]48[179]8[175]R1[171]48[177]0[167][153]R$:[153]"LOAD":[137]160
150 [137]130
160 R1[178]R1[171]48:[145]R1[137]180,350,490,1880,590,850,2250
170 [143] *** ENTREE DES MESSAGES ***
180 [153]" ATTENTION VOUS EFFACEZ TOUT "
190 [133]"VOULEZ-VOUS CONTINUER ( O/N ) OCMDCMDCMD";R$
200 [139]R$[179][177]"O"[167]30
210 [153]"LOADECRIVEZ VOTRE TEXTE:"
220 [153]"POUR TERMINER PRESSEZ ' # '":[153]">";
230 A%[178]0:[129]I[178]1[164]9:VA$(I)[178]"":[130]
240 A%[178]A%[170]1
250 [141]2210
260 [139]R$[178][199](20)[167][153][199](20);:[141]320:[137]250
270 [153]R$;
280 VA$(A%)[178]VA$(A%)[170]R$
290 [139]R$[178]"#"[167]30
300 [139][195](VA$(A%))[177]78[167]240
310 [137]250
320 [139][195](VA$(A%))[178]1[167]VA$(A%)[178]"":A%[178]A%[171]1:[137]340
330 VA$(A%)[178][200](VA$(A%),([195](VA$(A%))[171]1))
340 [142]
350 [153]"LOAD"[163]11);"VOICI LE TEXTE":[153]:A%[178]1:[139]VA$(A%)[178]""[167]1610
360 [151]54296,255
370 A%[178]0:R$[178]"":TI$[178]"000000"
380 A%[178]A%[170]1:I[178][195](VA$(A%))
390 [129]X[178]1[164]I:P$[178][202](VA$(A%),X,1)
400 [139]P$[178]"#"[167]X[178]I:[137]470
410 [153]P$;:[141]1000
430 [139]R$[178]"N"[167]X[178]I:[137]480
440 R$[178]""
450 [129]J1[178]1[164]K1:[130]
460 [130]X:[137]380
470 [130]X:[137]1650
480 [130]X:[137]30
490 [143] *** TRAMSMETTRE IMMEDIATEMENT"
500 PRINT"[147]";TAB(10);"ENVOYER SANS ATTENTE":PRINT:PRINT
510 POKE54296,255
520 PRINT"POUR TERMINER PRESSEZ ' # '"
530 PRINT"> ";:X=0:TI$="000000"
540 GOSUB2210
550 X=X+1:P$=R$
560 IFR$="#"THEN30
570 PRINTR$;:GOSUB1000
580 GOTO540
590 REM *** TRANSFER CASSETTE ***
600 PRINT"VOULEZ-VOUS....?"
610 PRINT"1- ENTRER L'INFORMATION SUR DISQUE"
620 PRINT"2- PRENDRE L'INFORMATION DU DISQUE"
630 INPUT"QUEL EST VOTRE CHOIX (1 OU 2) 2[157][157][157]";R$
640 IFR$="1"THEN670
650 IFR$="2"THEN750
660 GOTO630
670 REM *** SAUVER DISQUE ***
680 IFA%<1THENPRINT:PRINTTAB(20)"AUCUN TEXTE[146]":GOSUB1600:GOTO30
700 INPUT"ENTREZ LE NOM DU TEXTE";R$
710 OPEN7,8,1,R$:PRINT#7,A%
720 FORJ=1TOA%:PRINT#7,VA$(J):NEXT
730 CLOSE7:PRINT:PRINT"C'EST ECRIS"
740 GOTO1620
750 PRINT:INPUT"NOM DU TEXTE DEMANDE";N$
770 PRINT"APPUYEZ UNE CLE POUR CONTINUER"
780 GOSUB2220
790 OPEN7,8,0,N$
800 A%=1
810 INPUT#7,VA$(A%)
820 IF 64ANDSTTHEN840
830 A%=A%+1:GOTO810
840 CLOSE7:PRINT"LE TEXTE ";N$;" EST COMPLET":CLOSE7:GOTO1620
850 REM *** VITESSE ET FREQUENCE ***
860 PRINT"VOULEZ-VOUS...?"
870 PRINT"1- CHANGER LA VITESSE"
880 PRINT"2- CHANGER LA FREQUENCE"
890 INPUT"QUEL EST VOTRE CHOIX (1 OU 2) ? 1[157][157][157]";R$
900 IFR$="1"THEN1700
910 IFR$="2"THEN930
920 GOTO850
930 REM *** CHANGER LA FREQUENCE ***
935 PRINT"SON PRESENT "S1:PRINT"FORME D'ONDE PRESENT "FD$
937 INPUT"QUEL SON VOULEZ-VOUS (0-83) 50[157][157][157][157]";S1
938 IFS1<0ORS1>83THEN937
940 FORXA=0TOS1:READN1,N2:NEXT:RESTORE
950 INPUT"FORME D'ONDE DIFFERENTE";R$
955 IFR$="N"THEN30
960 INPUT"VOTRE CHOIX; T[146]RIANGLE D[146]ENT P[146]ULSE T[157][157][157]";FD$
961 IFFD$="T"THENF1=17:F2=16:GOTO30
962 IFFD$="D"THENF1=33:F2=32:GOTO30
963 IFFD$="P"THENF1=65:F2=64:GOTO30
964 GOTO960
1000 P=ASC(P$):IFP<46ORP>90THEN1120
1010 IFP=64THEN1650
1015 IFP=47THEN1555
1020 IFP=63THEN1530
1030 IFP=59THEN1540
1040 IFP=46THEN1510
1050 IFP>47ANDP<58THEN1090
1060 IFP>64ANDP<79THEN1100
1070 IFP>78ANDP<91THEN1110
1080 P=0:GOSUB1830:RETURN
1090 P=P-47:ONPGOTO1410,1420,1430,1440,1450,1460,1470,1480,1490,1500
1100 P=P-64:ONPGOTO1150,1160,1170,1180,1190,1200,1210,1220,1230,1240,1250,1260,1270,1280
1110 P=P-78:ONPGOTO1290,1300,1310,1320,1330,1340,1350,1360,1370,1380,1390,1400
1120 IFP=44ORP=39THEN1550
1130 IFP=36THEN1520
1140 P=0:GOSUB1830:RETURN
1150 GOSUB1570:GOSUB1580:RETURN
1160 GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1170 GOSUB1580:GOSUB1570:GOSUB1580:GOSUB1570:RETURN
1180 GOSUB1580:GOSUB1570:GOSUB1570:RETURN
1190 GOSUB1570:RETURN
1200 GOSUB1570:GOSUB1570:GOSUB1580:GOSUB1570:RETURN
1210 GOSUB1580:GOSUB1580:GOSUB1570:RETURN
1220 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1230 GOSUB1570:GOSUB1570:RETURN
1240 GOSUB1570:GOSUB1580:GOSUB1580:GOSUB1580:RETURN
1250 GOSUB1580:GOSUB1570:GOSUB1580:RETURN
1260 GOSUB1570:GOSUB1580:GOSUB1570:GOSUB1570:RETURN
1270 GOSUB1580:GOSUB1580:RETURN
1280 GOSUB1580:GOSUB1570:RETURN
1290 GOSUB1580:GOSUB1580:GOSUB1580:RETURN
1300 GOSUB1570:GOSUB1580:GOSUB1580:GOSUB1570:RETURN
1310 GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1580:RETURN
1320 GOSUB1570:GOSUB1580:GOSUB1570:RETURN
1330 GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1340 GOSUB1580:RETURN
1350 GOSUB1570:GOSUB1570:GOSUB1580:RETURN
1360 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1580:RETURN
1370 GOSUB1570:GOSUB1580:GOSUB1580:RETURN
1380 GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1580:RETURN
1390 GOSUB1580:GOSUB1570:GOSUB1580:GOSUB1580:RETURN
1400 GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1570:RETURN
1410 GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1580:RETURN
1420 GOSUB1570:GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1580:RETURN
1430 GOSUB1570:GOSUB1570:GOSUB1580:GOSUB1580:GOSUB1580:RETURN
1440 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1580:GOSUB1580:RETURN
1450 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1580:RETURN
1460 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1470 GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1480 GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1490 GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1570:RETURN
1500 GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1580:GOSUB1570:RETURN
1510 GOSUB1570:GOSUB1580:GOSUB1570:GOSUB1580:GOSUB1570:GOSUB1580:RETURN
1520 GOSUB1570:GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1570:RETURN
1530 GOSUB1570:GOSUB1570:GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1570:RETURN
1540 GOSUB1580:GOSUB1570:GOSUB1580:GOSUB1570:GOSUB1580:GOSUB1570:RETURN
1550 GOSUB1580:GOSUB1580:GOSUB1570:GOSUB1570:GOSUB1580:GOSUB1580::RETURN
1555 GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570:GOSUB1570::RETURN
1560 RETURN
1570 POKE54276,F1:GOSUB1770:GOSUB1590:RETURN
1580 POKE54276,F1:GOSUB1790:GOSUB1590:RETURN
1590 POKE54276,F2:GOSUB1770:RETURN
1600 FORJ=1TO2000:NEXT:RETURN
1610 PRINT"AUCUN TEXTE N'AS ETE ECRIS[146]"
1620 POKE158,0:PRINT:PRINT"APPUYEZ UNE TOUCHE POUR CONTINUER[146]"
1630 GOSUB2220
1640 GOTO30
1650 POKE54296,0
1660 VI=(((X-1)/5)/(TI/3600)):VI$=STR$(VI)
1670 PRINT:PRINT:PRINT"LE TEXTE ETAIT DE "MID$(VI$,1,4)" M/M":GOTO1620
1680 NTE=INT((((1000000/F)/16)-2)+.5):RETURN
1690 REM *** AJUSTEMENT VITESSE ***
1700 INPUT"QUELLE VITESSE(ENTRE 5 ET 20 M/M";V
1705 IFV<3ORV>20THEN1700
1706 IFV>12THENK=1:GOTO1710
1707 K1=ABS(V*130-1900)
1708 IFV<10THENK=K*(V*.4)
1709 V=13:K=K1
1710 V=ABS(V*3-80)
1711 GOTO30
1770 FORJ1=1TOV:NEXTJ1:RETURN:REMDITH
1790 FORJ1=1TOV*3:NEXTJ1:RETURN:REMDATH
1800 RETURN
1830 FORJ1=1TOK1:NEXT:RETURN:REMPAUSE
1880 PRINT"[147]QUELLES LETTRES ( T[146] = TOUTES )":PRINT:INPUT" T[157][157][157]";B$
1890 IFB$="T"THENB$="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890;,'$.?/"
1900 PR$=""
1910 L1=LEN(B$)
1920 INPUT"COMBIENS DE LETTRES 50[157][157][157][157]";L2:PRINT
1930 FORB1=1TOL2:B2=INT(RND(0)*L1)+1
1940 P$=MID$(B$,B2,1):PR$=PR$+P$:NEXTB1
1950 PRINT"[147]JE SUIS PRET A ENVOYER"
1960 B3=0
1970 INPUT"IMPRIME I[146]MMEDIATEMENT OU A LA F[146]IN I[157][157][157]";R$:PRINT
1980 IFR$="I"THENB3=1
1990 POKE54296,255
2000 FORB1=1TOL2:P$=MID$(PR$,B1,1):IFB3THENPRINTP$;" ";
2010 GETR$:IFR$<>""THEN2160
2020 GOSUB1000
2030 GOSUB1830
2040 NEXTB1:IFB3THEN2080
2050 PRINT:PRINT:INPUT"RESULTATS ( O/N ) O[157][157][157]";R$
2060 IFR$="O"THENPRINT"";PR$
2070 IFR$=""THEN2060
2080 PRINT:PRINT"VOULEZ-VOUS ?"
2090 PRINT"1- LA MEME SERIE "
2100 PRINT"2- AUTRE SERIE MEMES LETTRES"
2110 PRINT"3- AUTRE SERIE"
2120 PRINT"4- RETOURNER AU DEBUT
2130 [153]:[141]2210
2140 R[178][197](R$):[139]R[179]1[176]R[177]4[167]2130
2150 [145]R[137]1970,1900,1880,30
2160 [153]:[133]"JE CONTINUE (O/N) NCMDCMDCMD";R$:[153]
2170 [139]R$[178]"O"[167]2020
2180 [137]30
2190 [153]:[133]"JE CONTINUE (O/N) NCMDCMDCMD";R$:[153]
2200 [142]
2210 [151]167,0
2220 [161]R$:[139]R$[178]""[167]2220
2230 [151]167,1
2240 [142]
2250 [128]:[137]30
2260 [131]2,24,2,56,2,90,2,125,2,163,2,204,2,246,3,35,3,83,3,134,3,187,3,244,4
2270 [131]48,4,112,4,180,4,251,5,71,5,152,5,237,6,71,6,167,7,12,7,119,7,233
2280 [131]8,97,8,225,9,104,9,247,10,143,11,48,11,218,12,143,13,78,14,24,14,239
2290 [131]15,210,16,195,17,195,18,209,19,239,21,31,22,96,23,181,25,30,26,156,28,49
2300 [131]29,223,31,165,33,135,35,134,37,162,39,223,42,62,44,193,47,107,50,60,53
2310 [131]57,56,99,59,190,63,75,67,15,71,12,75,69,79,191,84,125,89,131,94,214
2320 [131]100,121,106,115,112,199,199,124,126,151,134,30,142,24,150,139,159,126
2330 [131]168,250,179,6,189,172,200,243,212,230,225,143,238,248,253,46